awilliam@xenbuild.aw [Thu, 30 Nov 2006 22:57:15 +0000 (15:57 -0700)]
[IA64] Fix sparse tree xenoprof/perfmon/oprofile build dependencies
Compile xenoprof perfmon related hypercall even when
CONFIG_PERFMON, CONFIG_OPROFILE, CONFIG_OPROFILE_MODULE are disabled.
They should be compiled in vmlinux unconditionally because they
might be called by other modules in theory.
Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
awilliam@xenbuild.aw [Wed, 29 Nov 2006 18:07:28 +0000 (11:07 -0700)]
merge with xen-unstable.hg
awilliam@xenbuild.aw [Wed, 29 Nov 2006 18:05:02 +0000 (11:05 -0700)]
[IA64] Create viosapic handling for IPF.
There are three reasons to do this.
1. IOSAPIC is different with IOAPIC
such as:
1. IOAPIC implement broadcast, but IOSAPIC doesn't
2. IOSAPIC doesn't implement dest_mode and remote irr bits.
3. IOSAPIC implement EOI but IOAPIC doesn't
etc.
2. In IA32 side there are I8259 and LAPIC who are
related to IOAPIC, but In IPF there is no I8259 and has LSAPIC.
3. after creating this file, all header files under asm-ia64/hvm, which
are linked from IA32 side, are not needed.
Signed-off-by: Anthony Xu <anthony.xu@intel.com>
awilliam@xenbuild.aw [Wed, 29 Nov 2006 16:16:46 +0000 (09:16 -0700)]
[IA64] remove undefined debugging line
Signed-off-by: Alex Williamson <alex.williamson@hp.com>
kfraser@localhost.localdomain [Wed, 29 Nov 2006 12:43:11 +0000 (12:43 +0000)]
merge
kfraser@localhost.localdomain [Wed, 29 Nov 2006 12:41:30 +0000 (12:41 +0000)]
[HVMLOADER] Clean up makefile, change TPM detection.
Signed-off-by: Keir Fraser <keir@xensource.com>
kfraser@localhost.localdomain [Wed, 29 Nov 2006 12:16:59 +0000 (12:16 +0000)]
[LINUX] Avoid triggering the softlockup BUG when offline for too long.
After being offline for a long time, the softlockup watchdog triggers
a BUG() on our faces. This is expected, as in fact, we spent more than
a fixed 10*HZ amount of time without touching the watchdog.
However, by inspecting the contents of stolen inside timer irq handler,
we can gain awareness of the fact, and do better than that.
Signed-off-by: Glauber de Oliveira Costa <gcosta@redhat.com>
Ewan Mellor [Wed, 29 Nov 2006 12:16:19 +0000 (12:16 +0000)]
Fix xm new -F -- this fix was recently introduced for xm create.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
Ewan Mellor [Wed, 29 Nov 2006 12:15:45 +0000 (12:15 +0000)]
Move the assert under the protection of the in_transaction flag.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
Ewan Mellor [Wed, 29 Nov 2006 12:14:45 +0000 (12:14 +0000)]
Silence log message when trying to unregister a watch that's already been
unregistered -- this is not a problem.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
kfraser@localhost.localdomain [Wed, 29 Nov 2006 12:04:49 +0000 (12:04 +0000)]
[LINUX] console: Fix comment.
Signed-off-by: Keir Fraser <keir@xensource.com>
kfraser@localhost.localdomain [Wed, 29 Nov 2006 11:40:10 +0000 (11:40 +0000)]
[XENOPROFILE, LINUX] compilation fix on x86_64
Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
kfraser@localhost.localdomain [Wed, 29 Nov 2006 11:38:17 +0000 (11:38 +0000)]
[HVMLOADER] Fix CFLAGS.
Signed-off-by: Keir Fraser <keir@xensource.com>
kfraser@localhost.localdomain [Wed, 29 Nov 2006 11:37:59 +0000 (11:37 +0000)]
[LINUX] console: Add option to use /dev/xvc0, major=204, minor=191.
The major/minor has now been allocated to us by lanana.org.
This is based on previous patches from:
Jeremy Katz <katzj@redhat.com>
Amos Waterland <apw@us.ibm.com>
Signed-off-by: Keir Fraser <keir@xensource.com>
kfraser@localhost.localdomain [Wed, 29 Nov 2006 11:07:51 +0000 (11:07 +0000)]
[HVM][VMX] NX bit implies PAE can be enabled. If IA32 VMX guest finds
NX bit is there, it may enable PAE even if PAE bit is returned 0 by
CPUID.
Signed-off-by: Xiaowei Yang <xiaowei.yang@intel.com>
kfraser@localhost.localdomain [Wed, 29 Nov 2006 10:58:35 +0000 (10:58 +0000)]
[DOCS] Update for new Xen boot parameters.
Signed-off-by: Keir Fraser <keir@xensource.com>
kfraser@localhost.localdomain [Wed, 29 Nov 2006 10:57:30 +0000 (10:57 +0000)]
Fix for network routing setup. Enables proxy arp on dom0's externally visible interface.
Signed-off-by: H. Andres Lagar-Cavilla <andreslc@cs.toronto.edu>
Ewan Mellor [Wed, 29 Nov 2006 10:56:02 +0000 (10:56 +0000)]
Diagnose a failure to open the xend-debug.log, and make the /var/log/xen
directory on startup, which was the most common reason to fail.
Closes bug #823.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
kfraser@localhost.localdomain [Wed, 29 Nov 2006 10:48:06 +0000 (10:48 +0000)]
[XEN] Emulator fixes.
1. Fix RIP-relative EA calculation. Immediate operands are never 64-bit.
2. Displacements are sign-extended so used signed types.
Signed-off-by: Keir Fraser <keir@xensource.com>
awilliam@xenbuild.aw [Wed, 29 Nov 2006 05:54:24 +0000 (22:54 -0700)]
[IA64] xenoprof linux/ia64 part
Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
awilliam@xenbuild.aw [Wed, 29 Nov 2006 04:35:13 +0000 (21:35 -0700)]
[IA64] xenoprof ia64 xen side
Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
Signed-off-by: Alex Williamson <alex.williamson@hp.com>
Ewan Mellor [Tue, 28 Nov 2006 18:41:42 +0000 (18:41 +0000)]
A trivial fix. login_unconditionally needs to be called with
self.login_unconditionally to avoid "global name
'login_unconditionally' is not defined"
Signed-off-by: Stefan Berger <stefanb@us.ibm.com>
awilliam@xenbuild.aw [Tue, 28 Nov 2006 18:34:03 +0000 (11:34 -0700)]
[IA64] add dummy empty header files necessary for xenoprof/ia64
Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
awilliam@xenbuild.aw [Tue, 28 Nov 2006 18:31:45 +0000 (11:31 -0700)]
[IA64] increase xen side pmu constatns for motecito.
Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
awilliam@xenbuild.aw [Tue, 28 Nov 2006 18:26:14 +0000 (11:26 -0700)]
[IA64] import linux/arch/ia64/oprofile/perfmon.c
To xen/arch/ia64/xen/oprofile/perfmon.c
Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
awilliam@xenbuild.aw [Tue, 28 Nov 2006 18:19:40 +0000 (11:19 -0700)]
[IA64] import perfmon, oprofile related files from linux to linux-sparse
Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
Updated to 2.6.16.33
Signed-off-by: Alex Williamson <alex.williamson@hp.com>
awilliam@xenbuild.aw [Tue, 28 Nov 2006 18:15:35 +0000 (11:15 -0700)]
[IA64] import oprofile, perfmon related files from linux to xen.
Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
Updated to 2.6.16.33
Signed-off-by: Alex Williamson <alex.williamson@hp.com>
Ewan Mellor [Tue, 28 Nov 2006 18:00:45 +0000 (18:00 +0000)]
Wait for device-bringup inside domain_start, outside the scope of the
domains_lock. This makes the VM.start call blocking, but allows xm list to
work while it is blocked. Move the handling of start_paused out of
XendDomainInfo.start as part of this.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
awilliam@xenbuild.aw [Tue, 28 Nov 2006 17:37:36 +0000 (10:37 -0700)]
merge with xen-unstable.hg
Ewan Mellor [Tue, 28 Nov 2006 17:28:43 +0000 (17:28 +0000)]
Plumb the "start_paused" flag through for VM.start and VM.resume. Do not
unpause the VM on start by default. This should fix problems seen recently
whereby devices are not attached to the VM by the time they boot, as
xm create was expecting to be able to wait for the devices before unpausing.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
kfraser@localhost.localdomain [Tue, 28 Nov 2006 17:15:22 +0000 (17:15 +0000)]
Allow DMA address width to be overridden with boot parameters:
In Xen: dma_bits=28 (for example)
In Linux: swiotlb_bits=28 (for example)
Signed-off-by: Keir Fraser <keir@xensource.com>
Ewan Mellor [Tue, 28 Nov 2006 17:04:32 +0000 (17:04 +0000)]
Add test_bindings back into the build -- it isn't integrated with the normal
targets, because it introduces an additional dependency (libcurl), but
make test/test_bindings does the right thing.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
kfraser@localhost.localdomain [Tue, 28 Nov 2006 14:27:13 +0000 (14:27 +0000)]
[XEN] Add emulator tracing diagnostic on error path.
Simplify shadow-mode entry protocol to emulator.
Signed-off-by: Keir Fraser <keir@xensource.com>
Ewan Mellor [Tue, 28 Nov 2006 14:24:20 +0000 (14:24 +0000)]
Bump xend_config_format to 3, to indicate that the lifecycle patches are
available.
Better version mechanisms will be forthcoming!
Signed-off-by: Ewan Mellor <ewan@xensource.com>
kfraser@localhost.localdomain [Tue, 28 Nov 2006 13:53:12 +0000 (13:53 +0000)]
[HVMLOADER] acpi: Implement an acpi_rsdp_get() function that searches
for the RSDP in memory (up to the BIOS) rather than calculating its
start address. Recent changes seem to have moved the RSDP to another
location in memory so that I received 'BAD RSPD signature' messages.
I have also fixed some other possible issues related to return codes
and alignment of ACPI entries.
Signed-off-by: Stefan Berger <stefanb@us.ibm.com>
kfraser@localhost.localdomain [Tue, 28 Nov 2006 13:50:32 +0000 (13:50 +0000)]
[BLKTAP] Use lartge enough types to express parameters of large block devices.
While the kernel side of blktap drivers is using 64-bit sector numbers
correctly when reporting disk sizing, the userspace parts where this
dat is actually generated is truncating at 32-bit. There are 3 variables
related to disk sizing which are used in the kernel/userspace code
'size', 'sector size' & 'info'. In kernel space these are treated as being
unsigned long long, unsigned long, and unsigned int, respectively. In
the blktap userspace code this were all varyingly long, unsigned long.
This mismatch caused 32-bit wraparound on large disks. The attached
patch updates the blktap userspace to use the same data types as
kernel space for all these params, thus both fixing the 32-bit bug &
giving the code consistency.
This patch has been tested both by comparing /proc/partitions in the
guest, with the image size seen in the host, and by using Stephen
Tweedie's 'verify-data' tool on a variety of multi-TB sized disks.
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
kfraser@localhost.localdomain [Tue, 28 Nov 2006 13:48:47 +0000 (13:48 +0000)]
[HVM][SVM] Allows 64bit HVM AMD-V Linux guests to boot.
Basically, this patch reverts part of c/s 12264.
Signed-off-by: Tom Woller <thomas.woller@amd.com>
kfraser@localhost.localdomain [Tue, 28 Nov 2006 13:46:10 +0000 (13:46 +0000)]
[QEMU] pci: Unaligned config read/write overflow
The default config read/write handlers allows a 4-byte read/write at
address 255. This can clobber the field after the config area. This
happens to be the PCIBus pointer in the PCIDevice structure.
This patch stops this from reducing the read/write to the (largest
multiple of 2) number of bytes within the config area.
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
kfraser@localhost.localdomain [Tue, 28 Nov 2006 13:43:25 +0000 (13:43 +0000)]
[XENOPROFILE] fix shared_xenoprof_page_with_guest() and cleanup.
Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
Ewan Mellor [Tue, 28 Nov 2006 13:34:15 +0000 (13:34 +0000)]
Added xm list --state option, to select VMs with a particular state. Make
this handled by a new message (xend.domains_with_state) and make xend.domains
equivalent to xend.domains_with_state(running). This restores the Xen 3.0.3
semantics of xend.domains.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
Ewan Mellor [Tue, 28 Nov 2006 13:32:07 +0000 (13:32 +0000)]
Do not display -1 as the domid when a VM is not running -- simply leave the
column blank.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
Tim Deegan [Tue, 28 Nov 2006 12:24:24 +0000 (12:24 +0000)]
[XEN] Clear just the _PAGE_RW bit when shooting writeable mappings
Signed-off-by: Tim Deegan <Tim.Deegan@xensource.com>
kfraser@localhost.localdomain [Tue, 28 Nov 2006 11:47:28 +0000 (11:47 +0000)]
merge
kfraser@localhost.localdomain [Tue, 28 Nov 2006 11:46:39 +0000 (11:46 +0000)]
[HVM] Add/fix access rights and limit checks to INS/OUTS emulation
Since these instructions are documented to take their intercepts
before these checks are being done in hardware, they must be carried
out in software.
Signed-off-by: Jan Beulich <jbeulich@novell.com>
kfraser@localhost.localdomain [Tue, 28 Nov 2006 11:45:54 +0000 (11:45 +0000)]
[HVM] Non-flat protected mode HVM support.
This is now the full set of changes needed to eliminate the assumption
that segments in protected mode always have zero base addresses. At
once, this further simplifies the instruction length determination
code used for MMIO of HVM domains.
Signed-off-by: Jan Beulich <jbeulich@novell.com>
Ewan Mellor [Tue, 28 Nov 2006 11:43:43 +0000 (11:43 +0000)]
Fix missing import.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
kfraser@localhost.localdomain [Tue, 28 Nov 2006 11:43:39 +0000 (11:43 +0000)]
[HVM] Fix MSR access code.
- rdmsr/wrmsr always use ECX (not RCX) as register index.
- SVM still had the function names explicitly in the HVM_DBG_LOG() output
- the guest should (at the very minimum) see GP fault for MSRs
accesses to which even fault in Xen itself
Signed-off-by: Jan Beulich <jbeulich@novell.com>
Ewan Mellor [Tue, 28 Nov 2006 11:35:10 +0000 (11:35 +0000)]
Don't bail if the VM renaming at the end of saving doesn't succeed -- we
expect a failure if this is a localhost migration.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
Ewan Mellor [Tue, 28 Nov 2006 11:31:46 +0000 (11:31 +0000)]
Added configuration for authentication through Xen-API -- it can now be set
to use PAM, or to be turned off entirely, on a listener by listener basis.
Listen on a different unix domain socket for the Xen-API server, so that it
can co-exist with the others.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
Ewan Mellor [Tue, 28 Nov 2006 10:24:52 +0000 (10:24 +0000)]
Fix log message.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
Ewan Mellor [Tue, 28 Nov 2006 10:23:34 +0000 (10:23 +0000)]
Implement an "allowed hosts" mechanism for the XML-RPC server layer, using
code from the relocation protocol handling and some plumbing. Add a new
configuration entry for the Xen-API server, including use of this mechanism.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
Tim Deegan [Tue, 28 Nov 2006 09:51:05 +0000 (09:51 +0000)]
[XEN] Remove valid_mfn().
Since cset 12568 removed VALID_MFN(), valid_mfn() is just confusing.
Signed-off-by: Tim Deegan <Tim.Deegan@xensource.com>
Tim Deegan [Tue, 28 Nov 2006 09:39:32 +0000 (09:39 +0000)]
[XEN] Don't unpin old shadow top levels until the new ones are pinned.
This will stop a possible case where we unshadow an entire process
on a TLB-flush CR3 write.
Signed-off-by: Tim Deegan <Tim.Deegan@xensource.com>
Ewan Mellor [Mon, 27 Nov 2006 20:04:20 +0000 (20:04 +0000)]
Cope with non-integer domids (i.e. None) in the error message surrounding
save/restore.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
kfraser@localhost.localdomain [Mon, 27 Nov 2006 17:49:41 +0000 (17:49 +0000)]
[HVM] Re-introduce the 'apic' configuration option, default to 1.
Also simplify the HVM builder interface by doing more work in
the python wrapper, and fix mapping of shared_info page after the
change to map foreign pages by GMFN rather than MFN.
Signed-off-by: Keir Fraser <keir@xensource.com>
kfraser@localhost.localdomain [Mon, 27 Nov 2006 17:48:24 +0000 (17:48 +0000)]
[XEN] Remove VALID_MFN(); replace uses with mfn_valid().
Signed-off-by: Keir Fraser <keir@xensource.com>
awilliam@xenbuild.aw [Mon, 27 Nov 2006 17:10:57 +0000 (10:10 -0700)]
[IA64] Idle domain doesn't need to save and restore fph
Signed-off-by: Anthony Xu <anthony.xu@intel.com>
awilliam@xenbuild.aw [Mon, 27 Nov 2006 16:26:15 +0000 (09:26 -0700)]
[IA64] fix p2m table destruction
Introduce delayed p2m table destruction
Signed-off-by: Tsunehisa Doi <Doi.Tsunehisa@jp.fujitsu.com>
Signed-off-by: Tomonari Horikoshi <t.horikoshi@jp.fujitsu.com>
Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
Ewan Mellor [Mon, 27 Nov 2006 14:52:41 +0000 (14:52 +0000)]
When suspending and resuming, look up the managed path using the domain's UUID.
Add a resumed domain to the self.domains list after XendCheckpoint.restore,
to ensure that it does not get recreated immediately afterwards.
Perform domain_resume under the domains_lock, given that the domain needs to
be added.
These fixes together should fix xm suspend and xm resume.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
Ewan Mellor [Mon, 27 Nov 2006 14:48:38 +0000 (14:48 +0000)]
Don't send the old state string for halted domains -- it doesn't make any
sense, and we don't want to see state flags linger.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
Ewan Mellor [Mon, 27 Nov 2006 14:47:23 +0000 (14:47 +0000)]
Reset the domain name after the save completes. This is necessary, now that
we have persistent domains.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
Ewan Mellor [Mon, 27 Nov 2006 14:45:44 +0000 (14:45 +0000)]
Add xm resume to the commands list.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
kfraser@localhost.localdomain [Mon, 27 Nov 2006 14:20:44 +0000 (14:20 +0000)]
[XEN] Cleanups to phys/mach address handling.
1. Balloon driver does not need to set M2P entry.
This is done by the populate_physmap hypercall.
2. Xen now translates foreign mappings from GMFN->MFN.
Tools are simplified because of this.
Signed-off-by: Keir Fraser <keir@xensource.com>
Ian Campbell [Mon, 27 Nov 2006 13:50:02 +0000 (13:50 +0000)]
[LINUX] Import kasprintf patch from upstream.
kasprintf has been merged upstream with a slightly different protoype
to the one in Xen. Import this patch and fixup the Xen tree to fit.
Signed-off-by: Ian Campbell <ian.campbell@xensource.com>
Ian Campbell [Mon, 27 Nov 2006 13:50:02 +0000 (13:50 +0000)]
[LINUX] Update to Linux 2.6.16.32
Updated patches/linux-2.6.16.32/net-gso-0-base.patch due to changes in
net/core/dev.c and net/core/skbuff.c and update the following in the sparse
tree:
include/linux/skbuff.h
mm/memory.c
mm/mmap.c
Signed-off-by: Ian Campbell <ian.campbell@xensource.com>
Ian Campbell [Mon, 27 Nov 2006 13:50:02 +0000 (13:50 +0000)]
[LINUX] Update to Linux 2.6.16.31
Updated linux-2.6-xen-sparse/arch/x86_64/kernel/acpi/Makefile
Signed-off-by: Ian Campbell <ian.campbell@xensource.com>
Ian Campbell [Mon, 27 Nov 2006 13:50:01 +0000 (13:50 +0000)]
[LINUX] Update to 2.6.16.30.
No changes required to sparse tree or patches directory.
Signed-off-by: Ian Campbell <ian.campbell@xensource.com>
kfraser@localhost.localdomain [Mon, 27 Nov 2006 13:22:21 +0000 (13:22 +0000)]
[NET] back: Fix DPRINTK message.
Signed-off-by: Keir Fraser <keir@xensource.com>
Ewan Mellor [Mon, 27 Nov 2006 12:53:40 +0000 (12:53 +0000)]
Fix typo.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
Ewan Mellor [Mon, 27 Nov 2006 12:50:30 +0000 (12:50 +0000)]
Do not bother waiting for the old HttpServer and UnixHttpServer threads when
shutting down -- they don't have exit handling themselves and ought to just
be made daemon threads.
Added some logging to dialog shutdown problems.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
kfraser@localhost.localdomain [Mon, 27 Nov 2006 12:00:01 +0000 (12:00 +0000)]
[HVM] Move IOAPIC ID back to 0x00. Shift LAPIC IDs to 0x01 upwards.
Actually the conflict between LAPIC ID 0x00 and IOAPIC ID 0x00
really doesn't matter even in a native system but we can avoid
any risk of a warning by shifting the LAPIC ID space by one.
Also the changeset fixes construction of the MADT (LAPIC info
was overwriting the IOAPIC info) so we can now boot with ACPI
MADT again.
Signed-off-by: Keir Fraser <keir@xensource.com>
kfraser@localhost.localdomain [Mon, 27 Nov 2006 11:39:54 +0000 (11:39 +0000)]
[HVM] Fix 8259 ELCR masks.
Signed-off-by: Keir Fraser <keir@xensource.com>
kfraser@localhost.localdomain [Mon, 27 Nov 2006 10:24:41 +0000 (10:24 +0000)]
[XENOPROFILE] removed unused gmaddr argument.
Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
kfraser@localhost.localdomain [Mon, 27 Nov 2006 10:23:19 +0000 (10:23 +0000)]
[MINIOS] Switched to new interface for HYPERVISOR_sched_op().
Signed-off-by: Dietmar Hahn <dietmar.hahn@fujitsu-siemens.com>
kfraser@localhost.localdomain [Mon, 27 Nov 2006 10:14:45 +0000 (10:14 +0000)]
[HVM] Fix bugs in RTC alarm code.
- comparing bcd with binary data
- comparing min with mon
Signed-off-by: Xiaowei Yang <xiaowei.yang@intel.com>
kfraser@localhost.localdomain [Mon, 27 Nov 2006 10:09:19 +0000 (10:09 +0000)]
[QEMU] fdc: Limit sector size to 16K
In fdctrl_start_transfer the sector size field (fifo[5]) is not
checked for overflows. This allows an arbitrarily large sector size
to be used, which can in turn result in a negative data_len field that
is then used for DMA transfers.
This can lead to the corrpuption of qemu state because some subsequent
checks on the transfer length is conducted using signed integers.
This patch limits the value fifo[5] to 7 which is the standard limit
on floppy sector size.
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
kfraser@localhost.localdomain [Mon, 27 Nov 2006 10:08:12 +0000 (10:08 +0000)]
[VMXASSIST] Fix the wrong order definition of ES/DS in regs structure.
Signed-off-by: Xin Li <xin.b.li@intel.com>
kfraser@localhost.localdomain [Mon, 27 Nov 2006 10:06:41 +0000 (10:06 +0000)]
[PATCH] svm: fix RIP-relative addressing in invlpg emulation
RIP-relative addressing as relative to the beginning of the next (or,
in other word, the end of the current) instruction.
Signed-off-by: Jan Beulich <jbeulich@novell.com>
kfraser@localhost.localdomain [Mon, 27 Nov 2006 10:05:23 +0000 (10:05 +0000)]
[HVM] Small fixes to mmio decoder/emulator.
Remove a superfluous special case in xchg and fix word-size source
operand movzx.
Signed-off-by: Jan Beulich <jbeulich@novell.com>
kfraser@localhost.localdomain [Mon, 27 Nov 2006 10:03:35 +0000 (10:03 +0000)]
[MINIOS] Exports a function to have all Xen ports unbound.
This is necessary when using mini-os as the foundation for a boot-loader.
Signed-off-by: Jacob Gorm Hansen <jacobg@diku.dk>
kfraser@localhost.localdomain [Mon, 27 Nov 2006 10:02:24 +0000 (10:02 +0000)]
[HVM] Fix building PV-on-HVM drivers on i386.
Signed-off-by: Keir Fraser <keir@xensource.com>
kaf24@localhost.localdomain [Sun, 26 Nov 2006 17:39:09 +0000 (17:39 +0000)]
Update hgignore list
kaf24@localhost.localdomain [Sun, 26 Nov 2006 17:37:28 +0000 (17:37 +0000)]
[HVM] Dynamically build ACPI-table data block.
Only emit MP tables and MADT for multi-processor guests.
Signed-off-by: Keir Fraser <keir@xensource.com>
kaf24@localhost.localdomain [Sun, 26 Nov 2006 17:35:00 +0000 (17:35 +0000)]
[XEN] Fix emulator EA calculation for LODS/STOS.
Signed-off-by: Keir Fraser <keir@xensource.com>
kaf24@localhost.localdomain [Sun, 26 Nov 2006 13:52:48 +0000 (13:52 +0000)]
[XEN] Clean up EA computation in emulator.
Signed-off-by: Keir Fraser <keir@xensource.com>
kaf24@localhost.localdomain [Sun, 26 Nov 2006 13:37:27 +0000 (13:37 +0000)]
[HVM] Update VPIC device model for new interrupt delivery code.
Move BSP VLAPIC initialisation to hvmloader.
Remove callback_irq update hack from Linux unmodified drivers.
Signed-off-by: Keir Fraser <keir@xensource.com>
kfraser@localhost.localdomain [Fri, 24 Nov 2006 15:42:14 +0000 (15:42 +0000)]
[HVM] VPIC (i8259) device model cleanups.
Signed-off-by: Keir Fraser <keir@xensource.com>
kfraser@localhost.localdomain [Fri, 24 Nov 2006 14:37:45 +0000 (14:37 +0000)]
[HVM] Unaligned write to a PTE is a good indication the
page is no longer a page table.
Signed-off-by: Keir Fraser <keir@xensource.com>
Ewan Mellor [Fri, 24 Nov 2006 14:05:59 +0000 (14:05 +0000)]
Fix vncdisplay handling.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
Tim Deegan [Fri, 24 Nov 2006 09:42:40 +0000 (09:42 +0000)]
[HVM] Fix hvm_copy_[to|from]_guest_virt
which would fail if it crossed a page boundary where the guest physical
pages were not contiguous.
Signed-off-by: Tim Deegan <Tim.Deegan@xensource.com>
Tim Deegan [Thu, 23 Nov 2006 18:01:40 +0000 (18:01 +0000)]
[VMX] Make sure that the WP bit is always set in CR0 when running SVM guests.
This is the VMX equivalent of cset 12525:
4ddda0bbb57c.
Signed-off-by: Tim Deegan <Tim.Deegan@xensource.com>
Tim Deegan [Thu, 23 Nov 2006 17:54:06 +0000 (17:54 +0000)]
Merge
Tim Deegan [Thu, 23 Nov 2006 17:46:52 +0000 (17:46 +0000)]
[XEN] Pin l3 shadows of older x86_64 linux guests.
Older x86_64 linux kernels use one l4 table per cpu and context switch by
changing an l4 entry pointing to an l3 table. If we're shadowing them
we need to pin l3 shadows to stop them being torn down on every
context switch. (But don't do this for normal 64bit guests).
Signed-off-by: Tim Deegan <Tim.Deegan@xensource.com>
Tim Deegan [Thu, 23 Nov 2006 17:44:12 +0000 (17:44 +0000)]
[XEN] Don't call domain_crash_synchronous() with shadow lock held.
Call domain_crash() and propagate an error to the caller instead.
Signed-off-by: Tim Deegan <Tim.Deegan@xensource.com>
Tim Deegan [Thu, 23 Nov 2006 17:42:29 +0000 (17:42 +0000)]
[XEN] Simplify the shadow hash table.
Chain hash buckets through the shadow page_info structs instead
of in separately allocated structures. This lets us get rid of
some xenheap allocations and a domain_crash_synchronous() call.
Signed-off-by: Tim Deegan <Tim.Deegan@xensource.com>
Tim Deegan [Thu, 23 Nov 2006 17:40:28 +0000 (17:40 +0000)]
[XEN] Use a separate struct shadow_page_info for shadow pages
and move the definitions of shadow types etc out of public headers.
Signed-off-by: Tim Deegan <Tim.Deegan@xensource.com>
kfraser@localhost.localdomain [Thu, 23 Nov 2006 17:37:23 +0000 (17:37 +0000)]
[XEN] Small ioemul cleanup.
Signed-off-by: Keir Fraser <keir@xensource.com>
kfraser@localhost.localdomain [Thu, 23 Nov 2006 17:32:18 +0000 (17:32 +0000)]
[XEN] Extend emulator to fully decode ModRM and SIB bytes.
Use this to detect data accesses that straddle a page boundary
and fault on the second page. We cannot handle these properly.
Signed-off-by: Keir Fraser <keir@xensource.com>
Ian Campbell [Thu, 23 Nov 2006 17:21:26 +0000 (17:21 +0000)]
[XEN] Avoid using regparm on a typedef.
This does not work reliably across gcc versions. Workaround this by attaching
the regparm attribute to a variable instead.
Also since guest_to_host_gpr_switch() updates the guest EAX on the stack there
is no need to do so in emulate_privileged_op() as well. Therefore io_emul stub
now returns void.
Signed-off-by: Ian Campbell <ian.campbell@xensource.com>
Ian Campbell [Thu, 23 Nov 2006 15:06:35 +0000 (15:06 +0000)]
[BLKFRONT] Only attempt to recover a device on resume if it was connected when
we suspended.
Signed-off-by: Ian Campbell <ian.campbell@xensource.com>